package com.bjbn.aesbcommonapi.utils;

import com.alibaba.fastjson.JSONObject;
import org.springframework.stereotype.Component;

@Component
public class MsgFormatUtil {
    /**
     * 判断是否为标准格式
     * 标准格式包含：producer、from、bizId、time、data字段
     */
    public static boolean isStandardFormat(JSONObject messageJson) {
        return messageJson.containsKey("producer")
                && messageJson.containsKey("from")
                && messageJson.containsKey("bizId")
                && messageJson.containsKey("time")
                && messageJson.containsKey("data");
    }

    /**
     * 判断是否为物联网平台格式
     * 物联网平台格式包含：mqTopic、pushContent、statisTime、tenantId、productId、deviceId、messageType、sourceType、targetTopicName字段
     */
    public static boolean isIotPlatformFormat(JSONObject messageJson) {
        return messageJson.containsKey("mqTopic")
                && messageJson.containsKey("pushContent")
                && messageJson.containsKey("statisTime")
                && messageJson.containsKey("tenantId")
                && messageJson.containsKey("productId")
                && messageJson.containsKey("deviceId")
                && messageJson.containsKey("messageType")
                && messageJson.containsKey("sourceType")
                && messageJson.containsKey("targetTopicName");
    }

}
